set(utils_main_files
	"COMIniter.h"
	"COMIniter.inl"
	"CommandLine.cpp"
	"CommandLine.h"
	"COMPointer.h"
	"COMPointer.inl"
	"Library.cpp"
	"Library.h"
	"MemoryBuffer.cpp"
	"MemoryBuffer.h"
	"Paths.h"
    "ProcessUtils.h"
	"PTree.h"
	"Singleton.h"
	"Singleton.inl"
)

set(utils_string_files
	"UnicodeConverter.h"
	"UnicodeConverter.inl"
)

if(MSVC)
	set(utils_ps_files
		"win32/Handle.h"
		"win32/Handle.inl"
		"win32/Paths_win32.cpp"
        "win32/ProcessUtils_win32.cpp"
        "win32/UnicodeConverter_win32.cpp"
	)
elseif(UNIX)
	set(utils_ps_files
		"unix/FileHandle.h"
		"unix/FileHandle.inl"
        "unix/ProcessUtils_unix.cpp"
        "unix/UnicodeConverter_unix.cpp"
	)
else()

endif()

set(utils_all_files
	${common_misc_files}
	${utils_main_files}
	${utils_ps_files}
	${utils_string_files}
)

add_library(utils STATIC ${utils_all_files})
add_libs_target(utils)

target_link_libraries (utils io)

source_group(main FILES ${utils_main_files})
source_group(platform_specific FILES ${utils_ps_files})
source_group(string FILES ${utils_string_files})

#include (${TOOLS_ROOT}/common.cmake)
add_common_properties(utils)